---
title: 'Astro Studio'
description: Интерактивная панель для управления Astro DB.
i18nReady: true
---
import ReadMore from '~/components/ReadMore.astro';
import PackageManagerTabs from '~/components/tabs/PackageManagerTabs.astro';

[Веб-портал Astro Studio](http://studio.astro.build) позволяет вам подключаться и управлять вашими удаленными [базами данных Astro DB](/ru/guides/astro-db/) через веб-интерфейс или с использованием [CLI-команд](/ru/reference/cli-reference/#astro-studio-cli).

Из вашей панели управления Studio у вас есть доступ к управлению учетной записью, справочным статьям и консоли сообщений поддержки.

Посетите [Astro Studio](http://studio.astro.build), чтобы зарегистрироваться или войти в систему.

## Создание нового проекта Studio

Существует два способа создания проекта в Astro Studio:

1. [**Использовать веб-интерфейс Astro Studio**](https://studio.astro.build) для создания из нового или существующего репозитория GitHub.

    Чтобы начать, нажмите кнопку "create project" в заголовке и следуйте инструкциям. Astro Studio подключится к вашему репозиторию GitHub и создаст новую хостинговую базу данных для вашего проекта.

2. **Использовать Astro Studio CLI** для создания из любого локального проекта Astro. Для начала можно выполнить следующие команды:

    <PackageManagerTabs>
    <Fragment slot="npm">
    ```shell
    # Войдите в Astro Studio с помощью вашей учетной записи GitHub
    npx astro login

    # Свяжите новый проект, следуя инструкциям
    npx astro link

    # (Необязательно) Отправьте вашу локальную конфигурацию базы данных на удаленную базу данных
    npx astro db push
    ```
    </Fragment>
    <Fragment slot="pnpm">
    ```shell
    # Войдите в Astro Studio с помощью вашей учетной записи GitHub
    pnpm astro login

    # Свяжите новый проект, следуя инструкциям
    pnpm astro link

    # (Необязательно) Отправьте вашу локальную конфигурацию базы данных на удаленную базу данных
    pnpm astro db push
    ```
    </Fragment>
    <Fragment slot="yarn">
    ```shell
    # Log in to Astro Studio with your GitHub account
    yarn astro login

    # Свяжите новый проект, следуя инструкциям
    yarn astro link

    # (Необязательно) Отправьте вашу локальную конфигурацию базы данных на удаленную базу данных
    yarn astro db push
    ```
    </Fragment>
    </PackageManagerTabs>

    После того как вы вошли в систему и успешно подключились, вы можете выполнять все команды Astro DB для управления удаленной базой данных. 

     <ReadMore>О всех доступных командах см. в [справочнике Astro DB CLI](/ru/guides/integrations-guide/db/#справочник-по-cli-astro-db).</ReadMore>


## Развертывание с подключением к Studio

Вы можете развернуть свой проект Astro DB с живым подключением к вашей базе данных Studio. Это возможно на любой платформе развертывания с использованием статических сборок или [адаптера SSR](/ru/guides/server-side-rendering/).

Сначала настройте свою команду сборки для подключения к Studio с использованием флага `--remote`. В этом примере флаг применяется к скрипту `"build"` в файле `package.json` вашего проекта. Если ваша платформа развертывания принимает команду сборки, убедитесь, что она установлена на `npm run build`.


```json title="package.json" "--remote"
{
  "scripts": {
    "build": "astro build --remote"
  }
}
```

### Создание токена приложения Studio

Для доступа к вашей базе данных Studio из продакшн-развертывания вам нужно создать токен приложения. Вы можете создать токен приложения на панели управления вашего проекта Studio, перейдя на вкладку **Settings** и выбрав **Tokens**.

Скопируйте сгенерированный токен и примените его в качестве переменной окружения / секрета окружения на вашей платформе развертывания, используя имя `ASTRO_STUDIO_APP_TOKEN`.

## Настройте действие GitHub CI

Вы можете автоматически отправлять изменения схемы в вашу базу данных Studio с использованием действия Studio CI. Это позволит убедиться, что изменения могут быть внесены безопасно, и поддерживать конфигурацию в актуальном состоянии при каждом слиянии с `main`.

[Следуйте документации GitHub](https://docs.github.com/en/actions/security-guides/using-secrets-in-github-actions#creating-secrets-for-a-repository), чтобы настроить новый секрет в вашем репозитории с именем `ASTRO_STUDIO_APP_TOKEN` и вашим токеном приложения Studio в качестве значения секрета.

После того как секрет настроен, создайте новый файл рабочего процесса GitHub Actions в директории проекта `.github/workflows` для проверки репозитория и установки Node.js в качестве шагов, а также используйте действие `withastro/action-studio` для синхронизации изменений схемы. 

После настройки секрета создайте новый файл рабочего процесса GitHub Actions в директории проекта `.github/workflows` для проверки репозитория и установки Node.js в качестве шагов, а также используйте действие `withastro/action-studio` для синхронизации изменений схемы. 

Действие запустит `astro db verify` на всех [событиях-триггерах](https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows), чтобы убедиться, что изменения схемы могут быть применены безопасно. Если вы специально добавите триггер **[push](https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#push)**, действие перенесет эти изменения в базу данных Studio.

Приведенный пример GitHub Action `_studio.yml` отправляет изменения при каждом обновлении ветки `main`:


```yaml title=".github/workflows/_studio.yml"
name: Astro Studio

env:
  ASTRO_STUDIO_APP_TOKEN: ${{secrets.ASTRO_STUDIO_APP_TOKEN }}

on:
  push:
    branches:
      - main
  pull_request:
    types: [opened, reopened, synchronize]

jobs:
  DB:
    permissions:
      contents: read
      actions: read
      pull-requests: write
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: 20
      - uses: jaid/action-npm-install@v1.2.1
      - uses: withastro/action-studio@main
```